■文章編11      ┏━━━━━━━━━━━━━━━━━━━━━━━━┓      ┃ ┃      ┃ コンソール とか コマンドライン とか ┃      ┃ ┃      ┗━━━━━━━━━━━━━━━━━━━━━━━━┛ ■コンソールとかコマンドラインとか 取り上げておいてこう書くのもなんですが,コンソールなんて言葉の意味を 正確に知らなくても,たいていのパソコン雑誌の記事は読めます。 コンソールというのはコンピュータが大きな部屋一杯を占めるような大仰な ものだった時代からの用語で,そもそもはコンピュータの入出力機器の端末, つまり使い手である人間に近い部分のまとまりを示す言葉でした(ですから, いまだに「操作卓」とか「制御卓」なんて訳している辞典もあるようです)。 ま,当節の最もオーソドックスなシステムでなら,キーボードとディスプレイ のペアを合わせてコンソールだといっても,まず間違いではないでしょう。 キューブリックの「2001年宇宙の旅」に登場した,映画史上最も有名なコン ピュータHAL9000の場合は,コンソールといってももう少し高級で,キーボ ード,ディスプレイのほか,音声認識ユニット,映像認識ユニットなどが活用 されていました。そんな未来のスーパーウルトラデラックスコンピュータを取 り上げるまでもなく,MacintoshやFM TOWNSなど,最近のパソコンで は,マウスなどもコンソールの中に含められます。 また,今後のコンピュータの発展は,このコンソールの変遷,進歩にかかっ ているといっても過言ではないでしょう・・・・。 ・・・・と,ここまでの説明を読まれて「そうかそうか,なるほどコンソールね ぇ」と思われた方,ごめんなさい。ここまでの文に嘘こそありませんが,それ はかなり広義かつ源流的な用法であり,現在プログラマなどの間で実際に使わ れるコンソールという言葉の意味はもう少し狭く,限定されています。たとえ ば,Oh!FMTOWNS編集部内で「コンソール」という言葉が交わされるとす ると,それは実際に目の前にあるディスプレイの,それも,「コマンド」(パ ソコンに与える命令)を待つばかりのテキスト画面を指すことが多いのです。 この意味,この使い方において,この後説明する「コマンドライン」と「コン ソール」の2つの言葉は,まま混同して使われているといってよいでしょう。 では,コマンドラインとはいったい何でしょうか。MS-DOSやTownsO S V2.1のコマンドモードなどでは,このコマンドラインにコマンドやパラメ ータを入力して,パソコンに意思を示します。・・・・おっと,少し説明を急ぎ過 ぎましたか? ご心配なく。実はあなたにはとっくにわかっていることなので す。 MS-DOSをお使いの方なら,たとえば A>_ の_(カーソル)のある行がコマンドライン,dirだのcopyだのがコマンド。di rの後に/wと書いたり,copyの後にファイル名を書いたりするのがパラメータ です。 パラメータは,日本語で「引き数」とか「補助変数」とか呼ばれるものです が,まあ,パソコンにコマンド(命令)を与えるときに,それを補助する数字 や文字,というくらいに覚えておけばよいでしょう。たとえば,パソコンが空 腹だとして(なんというたとえだ・・・・),「タベロ」というコマンドを使うと き,「ナニヲ」とか「ドノクライ」にあたるものが,パラメータなのです(少 し前のページで解説したように,パラメータとオプションスイッチを分けて解 説するマニュアルもあるようですが,ここでは全部パラメータということで統 一しましょう)。 A>タベロ リンゴ 2個 この「リンゴ」や「2個」がパラメータにあたります。パラメータという言葉 は,いろいろなソフトのマニュアルなどでよく出てくる言葉ですから,だいた いこんなものなんだな,と覚えておいてください。 ところで,TownsOS V2.1では,TownsMENUからDOSアプリを実行 できるモードを「コンソールモード」,その逆を「コンソールレスモード」と 命名しています。これは,たいへんややこしい。せめて前者を「コンソールあ りモード」くらいにしてほしかったですね(今ここで書いていても,何がなん だかよくわかりません)。 次に。MS-DOSなどの A> の部分を,プロンプトというのですが,これはいったいどういうシロモノなの でしょうか。次の項へ続きますね。 ■プロンプト コマンドラインにおけるプロンプトは,正しくはシステムプロンプトといい ます。 英語のpromptには,「敏速な」「すばやい」といった意味のほか,「(人・ 行為などを)促す」という意味がありますが,ここでは後者の「促す」ものを 示します。 人がコンソールに向かうとき,つまり,ディスプレイに対峙し,キーボード の上に指を置くとき,ディスプレイ上でコンピュータが「何か入力してくださ い」と意思表示していることを示すもの(入力を促すもの),それがたとえば 「A>」などのプロンプトなのです。 MS-DOSでは「A>」というプロンプトがあると,それは,Aドライブの ディスクにあるコマンドを実行すること(この場合のAドライブをカレントド ライブといいます)を示しますが,このプロンプトで少し遊んでみましょう。 FM TOWNSやFMRシリーズのユーザーの方は,お手元のマシンでM S-DOSやTownsOS V2.1のコマンドモードを立ち上げてください。そし て,キーボードから A>prompt 何か入力せよ: と入力し,リターンキーを押してみてください。それ以降,プロンプトが 何か入力せよ: に変わりましたね? そうです,promptとはMS-DOSの内部コマンドの1 つで,文法的には prompt[<プロンプトテキスト>] とすることで,プロンプトの表示をいろいろに変えることが可能なのです。こ のプロンプトテキストには,「何か入力せよ:」とか「Linux:」とかいう普通 の文字や言葉を使うこともできますし,「$」記号の後にいろいろな記号を組 み合わせることによって特別なプロンプトを表示することもできます。 以下,いくつか例を示しますので,実際に試してみてください($記号と組 み合わせる記号にどういうものがあるかは,MS-DOSのマニュアルの,pro mptコマンドの項をご覧ください)。 〔例〕 prompt Date=$d$_Time=$t$_$p: (日付と時刻を表示したうえ,カレントドライブとカレントディレク トリを示す) prompt $e[7mTowns:$e[m (「Towns:」というプロンプトを反転表示) このようなプロンプトの指定は,AUTOEXEC.BATファイルに書いておけば,そ のディスクで立ち上げたときのプロンプトをいつも好みのものに変えられます。 ■標準入出力 コンソールやコマンドラインという言葉が出てきたついでに「標準入出力」 ということにもさらりと触れておきましょう。もっともこれは,C言語やアセ ンブラでバリバリプログラムを組もうという方を除くと,それほど気にしなく てもよい言葉です。 コンピュータで,あるOS(基本的なシステムソフトウェア)上でプログラ ムを走らせるとき,とくに指定や変更がなされないときのデータの入力先や出 力先のことを標準入出力といいます。 MS-DOSでは, 標準入力=キーボードから 標準出力=ディスプレイへ になっています。OS上であるソフトが走っているとき,コマンドやパラメー タの入力はキーボードから,その結果やエラーメッセージなどはディスプレイ (のコマンドライン)に出力されるということです。 しかし,TownsMENUやMacのOSなどでは事情が異なりまして,なにし ろコマンドラインではないわけですから,入出力については常にプログラマが 管理する必要があり,GUIを完備したOSが,アプリユーザーには都合がよ くても,開発者には面倒がられる1つの理由になっています。